#ifndef __Shader_H__
#define __Shader_H__

#include "d3dheaders.h"

namespace KEngine
{
	class Camera;
	class Device;
	class Shader
	{
	public:
		Shader();
		virtual ~Shader();

		virtual bool create(Device* device,const char* shaderFileName);
		virtual void render(Camera* camera);
	protected:
		virtual bool initialize();
		virtual void renderImp(Camera* camera);
		virtual void setShaderClipPlane(Camera* camera, bool shaderMode);
	protected:
		ID3DXEffect*			mEffect;
	};


}

#endif 